package top.drose;

import java.util.Scanner;

/// 约瑟夫环问题,使用动态链表实现
public class P3_1 {

    public static void main(String[] args) {
        int n,m;//总人数和数到第m个出去一个
        Scanner sc = new Scanner(System.in);
        n = sc.nextInt();
        m = sc.nextInt();
        //为了删除某个节点，要保存当前节点和他的前一个节点
        Node head=new Node();
        head.data=1;
        head.next=null;
        Node p,prev;
        Node tail=head;//这里就是head对象本身，java中的对象赋值可以看作是地址赋值
        for(int i=2;i<=n;i++){
            p=new Node();            p.data=i;            p.next=null;
            tail.next=p;
            tail=p;
        }
        tail.next=head;//尾节点连接到头，形成环形
        //开始数数
        tail=head;
        prev=head;
        while((n--)>1){
            for(int i=1;i<m;i++){
                prev=tail;
                tail=tail.next;
            }
            System.out.print(tail.data+" ");
            prev.next=tail.next;
            tail=prev.next;
        }
        System.out.print(tail.data+" ");
        return;
    }
}

class Node{
    int data;
    Node next;
}